<!-- saved from url=(0022)http://internet.e-mail -->
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Alladyn 1.9 beta</title>
<!--link rel="stylesheet" href="v.css"-->
<!-- http://alladyn.stpe.org/ -->
<script>
function Alladyn(G){
function V(v){for(var i=0;i<v.length;)with(v[i]){A(v[i++],id);if(ns4)V(document.layers)}}
function A(X,v){
	vlay[v]=X;if(ns4)X.style=X;X.vpos=P;X.vclip=ns4?c:C;X.vopacity=ie?O:ns6?o:N;X.vHTML=ns4?h:H;X.vol=0
	X.van={V:X,S:S,KF:K,F:-1,T:0,g:0,d:1,mode:'',f:[],a:{},s:{},purge:Q,reset:R,pause:T,rev:U,UDF:''}
	X.vGIN={};for(v in G)X.vGIN[G[v]]=W[G[v]](X)
}
function P(l,t){with(this.style){left=l;top=t}}
function C(t,r,b,l){this.style.clip='rect('+t+' '+r+' '+b+' '+l+')'}function c(t,r,b,l){with(this.clip){top=t;right=r;bottom=b;left=l}}
function O(v){this.style.filter='alpha(opacity='+v+')'}function o(v){this.style.MozOpacity=v+'%'}function N(v){with(this){visibility=(v<(vol?vol:Al.vol))?'hid':'show'}}
function H(v){this.innerHTML=v}function h(v){with(this.document){write(v);close()}}
function R(){with(this){F=-1;g=0;d=1;mode='';UDF='';f=[];a={}}}function Q(){with(this){f=[{}];a={};for(F in s)a[F]=f[0][F]=s[F];F=-1}}function T(){with(this){u=d;d=T;T=u}}function U(){with(this){T=-T;d=-d}}

function S(c){
	with(this){
		r=f.length;
		F+=d;
		
		if((F<0)||(F==r))switch(mode)
			{case'loop':F=(F<0)?r-1:0;break;case'ping':d=-d;F+=2*d;break;default:F-=d;g=eval(UDF)}
		
		if(g){if(F<0)F=0;for(p in f[F]){s[p]=f[F][p];switch(p){case'vopacity':V.vopacity(s[p]);break;case'ct':case'cr':case'cb':case'cl':c=1;break;case'f':fx(s[p]);break;default:V.style[p]=s[p]}}if(c)with(s)V.vclip(ct,cr,cb,cl)}
}	}

function K(v,t,N){
	with(this){r=f.length+t-1,q={}
		for(p in v){q[p]=(a[p]!=N)?(v[p]-a[p])/t:0;a[p]=v[p]}
		for(u=0;u<=t;u++){if(u!=t)f[r-u]={};if(r>=u)for(p in v)f[r-u][p]=Math.round(v[p]-u*q[p])}
}	}

function a(){
var c=[],I,A,U
function g(t,a,u){s();I=setInterval(v,t);A=a;U=u}function s(){I=clearInterval(I)}
function i(v){c[v.id]=v;v.van.g=1}function o(v){delete c[v.id]}
function v(){p=1;for(q in c)with(c[q].van){p=g?S():o(V)};if(p&A){s();if(U)eval(U)}}
return {go:g,push:i,pop:o,stop:s}
}


function i(){r=doc.images;if(ns4)for(p in vlay)with(vlay[p].document)for(u in images)r[u]=images[u];return r}
function n(v,w,p){p=p?p:ns4?W:doc.body
	if(ns4){q=new Layer(w,p);q.visibility='show'}else{
		if(ie){p.insertAdjacentHTML('BeforeEnd','<div id='+v+' style="position:absolute"></div>');q=ie.tags('div')[v]}
		else{q=doc.createElement('div');q.style.position='absolute';p.appendChild(q)}
		q.style.width=w
	}A(q,v);return q
}
var I={},p,q,r,u,W=window;doc=document;ie=doc.all;ns4=doc.layers;up5=doc.getElementById?doc.getElementsByTagName('div'):0;ns6=up5&&!ie

Al={v:2,A:a,vol:50,N:n,I:i};vlay=[];V(up5?up5:ie?ie.tags('div'):ns4)
}
// end of Alladyn 2 beta


function main(){
// van.KF zamiast vkf
var inc=0;
with(t=Al.N('ble'+(inc++),20)){vpos(100,100);vHTML('x');van.KF({top:100,left:100},1);van.KF({top:200,left:250},10);van.go=1;}

// dup staje sie animatorem
dupa=Al.A();
// dodawanie warstw do animatora pop() kasuje
dupa.push(t);
// :)
dupa.go(10,0,'alert("A")');
}

/*
zrobic alternatywne sciezki
track selector ?
uwaga na F, KF, purge, reset, rev, pause itp.
rozwazyc zrobienie tego w vGIN'nie
*/
</script>
</HEAD>

<BODY onload="Alladyn();main()" onresize="if(document.layers)document.location.reload()" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0">
</BODY>
